package com.bsj.power.common.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bsj.power.common.def.entity.role.UserRole;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author yinhao
 * @version 1.0
 * @description 用户角色
 * @date 2024/4/19
 */
@Repository
public interface UserRoleMapper extends BaseMapper<UserRole> {

    /**
     * 获取用户角色下所有权限集合
     * @param userId
     * @return
     */
    List<String> selectUserRolePermission(Long userId);

    /**
     * 获取用户绑定所有角色标识
     * @param userId
     * @return
     */
    List<String> selectUserRoleSign(Long userId);

    /**
     * 获取该用户的所有角色ID
     * @param userId
     * @return
     */
    List<Long> selectUserRoleIdList(Long userId);

    /**
     * 获取用户绑定所有角色的类型
     * @param userId
     * @return
     */
    Integer selectUserRoleType(Long userId);

    /**
     * 批量新增用户角色关系
     * @param list
     */
    void batchAddRoleInfo(List<UserRole> list);
}
